/****************************************************************************
                Университет:    Санкт-Петербургский Политехнический Университет
                Кафедра:        Компьютерные системы и программные технологии
                Аспирант:       Быков Илья Иванович
                Программа:      Расчет коэффициентов распределения
                Модуль:         resizenodecommand.h
                Назначение:
****************************************************************************/

#ifndef RESIZENODECOMMAND_H
#define RESIZENODECOMMAND_H

#include <QRect>

#include "command.h"

class Node;
class Document;

/* Клас для изменения размеров объектов-узлов. Унаследован от Command.
        undo() - отменить, откат к предыдущему действию
        redo() - вернуть, вернуться к состоянию до отката */
class ResizeNodeCommand : public Command
{
public:
    ResizeNodeCommand(Document *doc, QList<Node*> nodeList, qreal radius, QUndoCommand *parent = 0);

    void undo();
    void redo();

    bool mergeWith(const QUndoCommand *command);

private:
    QList<Node*> m_nodeList;
    QList<qreal> m_oldRadiusList;
    qreal m_newRadius;
};

#endif // RESIZENODECOMMAND_H
